/**
 * 初始化
 */
$(function () {
    // 表单验证和提交处理
    // $("#scoreForm").validate({
    //     submitHandler: function (form) {
    //         saveScore();
    //     }
    // });
    $('.fixed-table-pagination').show();
    // 初始化表格
    $('#teacherTb').bootstrapTable({
        method: 'GET',
        url: '/webapi/teacher/list', // 初始加载地址，这里假设是用于加载所有成绩数据的接口
        striped: true,
        cache: false,
        pagination: true,
        sortable: false,
        sidePagination: "server", // 后端分页
        pageNumber: 1,
        pageSize: 3,
        pageList: [3, 6, 10, 20, 100],
        queryParams: function (params) {
            return {
                pageSize: params.limit,
                pageNum: params.offset / params.limit + 1
            };
        },
        columns: [{
            checkbox: true,
        }, {
            field: 'id',
            title: '教师ID'
        }, {
            field: 'teacherNo',
            title: '教师工号'
        }, {
            field: 'teacherName',
            title: '教师工号'
        },{
            field: 'teacherPassword',
            title: '教师密码',
            formatter: passwordFormatter // 自定义操作列的格式化函数
        }, {
            field: 'cno',
            title: '课程号'
        }, {
            field: 'sex',
            title: '性别',
            formatter:function(data,row,meta){
                if(data == 1)
                    return "男";
                else if(data == 2)
                    return "女";
                else
                    return "未知";
            }
        },{
            field: 'age',
            title: '年龄',
        }]
    });
    $('#allTeacher').hide();
    // 点击按钮刷新表格
    $('#allTeacher').click(function () {
        $('#teacherTb').bootstrapTable('refresh');
    });
});
function passwordFormatter(value, row, index) {
    return `
        <span class="password-field" data-password="${value}">***</span>
        <svg style="width: 15px; height: 15px; position: relative; left: 70px; cursor:pointer; " t="1717082484900" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4288" width="200" height="200"><path d="M515.2 224c-307.2 0-492.8 313.6-492.8 313.6s214.4 304 492.8 304 492.8-304 492.8-304S822.4 224 515.2 224zM832 652.8c-102.4 86.4-211.2 140.8-320 140.8s-217.6-51.2-320-140.8c-35.2-32-70.4-64-99.2-99.2-6.4-6.4-9.6-12.8-16-19.2 3.2-6.4 9.6-12.8 12.8-19.2 25.6-35.2 57.6-70.4 92.8-102.4 99.2-89.6 208-144 329.6-144s230.4 54.4 329.6 144c35.2 32 64 67.2 92.8 102.4 3.2 6.4 9.6 12.8 12.8 19.2-3.2 6.4-9.6 12.8-16 19.2C902.4 585.6 870.4 620.8 832 652.8z" p-id="4289"></path><path d="M512 345.6c-96 0-169.6 76.8-169.6 169.6 0 96 76.8 169.6 169.6 169.6 96 0 169.6-76.8 169.6-169.6C681.6 422.4 604.8 345.6 512 345.6zM512 640c-67.2 0-121.6-54.4-121.6-121.6 0-67.2 54.4-121.6 121.6-121.6 67.2 0 121.6 54.4 121.6 121.6C633.6 582.4 579.2 640 512 640z" p-id="4290"></path></svg>
    `;
}
$(document).on('click', '.icon', function () {
    var $btn = $(this);
    var $passwordField = $btn.siblings('.password-field');
    var isHidden = $passwordField.text() === '***';
    if (isHidden) {
        $passwordField.text($passwordField.data('password'));
        $btn.find('i').removeClass('fa-eye').addClass('fa-eye-slash');
    } else {
        $passwordField.text('***');
        $btn.find('i').removeClass('fa-eye-slash').addClass('fa-eye');
    }
});
/**
 * 处理后端返回的操作结果
 * @param {Object} result 后端返回的结果对象，包含code和msg字段
 */
function handleResponse(result) {
    if (result.code === 1 || result.length > 0) {
        console.log('操作成功');
    } else {
        console.error('操作失败');
    }
}
/**
 * 查询学生信息，并更新Bootstrap表格显示
 */
function searchTeacher() {
    var searchBy = $("#searchBy").val(); // 获取查询方式
    var keyword = $("#searchInput").val().trim(); // 获取查询关键词
    console.log(keyword);
    if (keyword !== "") {
        $.ajax({
            url: "/webapi/teacher/search", // 发送查询请求的 URL
            method: "GET",
            data: {
                searchBy: searchBy,
                keyword: keyword
            }
        }).done(function (result) {
            console.log("result:",result);
            handleResponse(result);
            if (result.length > 0) {
                // 更新Bootstrap表格数据
                $('#teacherTb').bootstrapTable('load', {
                    total: result.length,
                    rows: result
                });
                $('#searchModal').modal('hide'); // 关闭模态框
                $('#allTeacher').show();
                // 为按钮添加点击事件处理函数
                $('#allTeacher').on('click', function() {
                    $(this).hide(); // 隐藏按钮
                });
                $('.fixed-table-pagination').hide();
            } else {
                // 如果没有查询到结果，显示空数据
                $('#teacherTb').bootstrapTable('removeAll');
                $('#teacherTb').bootstrapTable('append', []);
                $('#teacherTb').bootstrapTable('load', {
                    total: 0,
                    rows: []
                });
                $('#searchModal').modal('hide'); // 关闭模态框
                $('#allTeacher').show();
                // 为按钮添加点击事件处理函数
                $('#allTeacher').on('click', function() {
                    $(this).hide(); // 隐藏按钮
                });
                $('.fixed-table-pagination').hide();    //隐藏分页，显示所有相关教师信息
                alert("没有找到相关教师信息!!!")
            }
        });
    }
}
// /**
//  * 保存学生信息（更新）
//  */
// function saveScore() {
//     var id = $('#id').val();
//     var score = $('#score').val();
//     var result = confirm("确定保存修改信息吗？"); // 弹出确认提示框
//     if (result) {
//         $.ajax({
//             url: "/webapi/score/update", // 使用学生ID来构建更新请求的URL
//             method: "PUT",
//             data: {
//                 id: id,
//                 score: score  // 只提交需要更新的成绩字段
//             }
//         }).done(function (response) {
//             handleResponse(response);
//             $('#myModal').modal('hide'); // 关闭模态框
//         }).fail(function () {
//             alert("保存失败，请稍后重试！");
//         });
//     }
// }
// // 自定义操作列的格式化函数
// function operateFormatter(value, row, index) {
//     // 返回操作按钮的HTML代码
//     return [
//         '<button class="btn btn-sm btn-primary mr-2" onclick="editScore(' + row.id + ')">修改成绩</button>'
//         ].join('');
// }
// /**
//  * 更新学生信息的事先查询
//  * @param id
//  */
// function editScore(id) {
//     $('#myModal').modal('show');    //打开模态框
//     // $('#editId').show(); // 显示ID字段
//     $.ajax({
//         url: "/webapi/score/get/" + id,
//         method: "GET"
//     }).done(function (rs) {
//         $('#id').val(rs.id);
//         // $('#studentNo').val(rs.studentNo);
//         // $('#cno').val(rs.cno);
//         $('#score').val(rs.score);
//     });
//     // 在模态框关闭时，重新加载表格数据
//     $('#myModal').on('hidden.bs.modal', function () {
//         $('#scoreTb').bootstrapTable('refresh');
//         // $('#editId').hide(); // 隐藏ID字段
//     });
// }
$(function () {
    $('#allTeacher').on('click', function () {
        $(this).hide(); // 隐藏查询所有按钮
    });
});
